#include <gtest/gtest.h>
#include <iostream>
#include <unordered_map>
using namespace std;

// TestSuite 事件

class MymapTest : public testing::Test
{
public:
    static void SetUpTestCase()
    {
        cout << "所有单元测试前执行,初始化总环境!" << endl;
    }

    static void TearDownTestCase()
    {
        cout << "所有单元测试完毕执行,释放总环境!" << endl;
    }

public:
    unordered_map<string, string> _dict; // 每个单元测试独立一份
};

TEST_F(MymapTest, _insert) // 每个单元测试中的对象都独立
{
    _dict.insert(std::make_pair("Hello", "你好"));
    _dict.insert(std::make_pair("good", "很好"));
    _dict.insert(std::make_pair("see you", "再见"));
}
TEST_F(MymapTest, _size) // 每个单元测试中的对象都独立
{
    ASSERT_EQ(_dict.size(), 3); // 0
}

int main(int argc, char *argv[])
{
    testing::InitGoogleTest(&argc, argv);

    return RUN_ALL_TESTS();
}